﻿#include"stdafx.h"
#ifdef LK_
namespace LK
{ 
	namespace Collection {
		void IArrays::AddTypeInfo()
		{
#ifdef LK_REFLECTION_
			//引用反射命名空间
			using namespace Reflection;
			//获取类库的引用
			ptr<TypeLibrary> lib = GetGlobleLibrary();
			//获取类库中的全局命名空间
			PNamespaceNode globle = lib.GetGlobleNamespaceRef();
			//添加LK命名空间
			PNamespaceNode space = globle.FindOrAddNamespace(L"LK.Collection");
			//在LK命名空间中添加ptr<IArrays>类型
			PTypeNode n = space.FindOrAddTypeNode(L"IArrays", Type::Make<ptr<IArrays> >());
			n.AddBaseType(Type::Make<ptr<ICollections> >());
			n.AddBaseType(Type::Make<ptr<ISortables> >());
			n.AddBaseType(Type::Make<ptr<ICloneables> >());
#endif
		}
	}
}
#endif